//该文件专门应用于路由


import VueRouter from 'vue-router'

//引入组件
import About from '../pages/About'
import Home from '../pages/Home'
import News from '../pages/News'
import Message from '../pages/Message'
import Detail from '../pages/Detail'
//创建并且暴露一个路由器
const router = new VueRouter({
    routes: [
        {
            name: 'zhuye',
            path: '/home',
            component: Home,
            meta: { title: "主页" },
            children: [
                {
                    name: 'xinwen',
                    path: 'news',
                    component: News,
                    meta: { isAuth: true, title: "新闻" },
                    beforeEnter: (to, from,next) => {
                        if (to.meta.isAuth) {
                            if (localStorage.getItem("school") === "laoheixueyuan") {
                                next()
                            } else {
                                alert("学校名称不对，无法查看信息")
                            }
                        } else {
                            next()
                        }

                    }
                },
                {

                    name: 'xiaoxi',
                    path: 'message',
                    component: Message,
                    meta: { isAuth: true, title: "消息" },
                    children: [
                        {
                            name: 'xiangqing',
                            path: 'detail/:id/:title',
                            component: Detail,
                            meta: { title: "详情" },

                            //props的第一种写法，值为对象，该对象中的所有key-value都会以props的形式传给Detail组件
                            // props:{a:1,b:'hello'}

                            //props的第二种写法，值为布尔值，若布尔值为真，就会把该路由组件收到的所有params参数，以props形式传给Detail组件
                            // props:true

                            //props的第三种写法，值为函数
                            props($route) {
                                return { id: $route.params.id, title: $route.params.title }
                            }
                        }
                    ]
                }
            ]
        },
        {
            name: 'guanyu',
            path: '/about',
            component: About,
            meta: { title: "关于" }
        }
    ]
})

//全局前置路由守卫——初始化的时候被调用、每次路由切换之前被调用
// router.beforeEach((to,from,next) => {
//     console.log(to,from)
//     console.log(to.name)

//     //当缓存中存放的名字是老黑学院的时候就可以看到新闻和消息，否则看不到新闻和消息
//     //第二种写法
//     if(to.meta.isAuth){
//         if(localStorage.getItem("school") === "laoheixueyuan"){
//             next()
//         }else{
//             alert("学校名称不对，无法查看信息")
//         }
//     }else{
//         next()
//     }
// })

//全局后置路由守卫——初始化的时候调用、每次路由切换之后被调用
// router.afterEach((to) => {
//     document.title = to.meta.title ||"老黑系统"

// })

export default router


